The Internet is a worldwide system of computer networks and is a public, self-sustaining facility that is accessible to tens of millions of people worldwide. The most widely used part of the Internet is the World Wide Web, often abbreviated “WWW” or simply referred to as “the Web.” The Web organizes information through the use of hypermedia. The HyperText Markup Language (“HTML”) is typically used to specify the contents and format of a hypermedia document (e.g., a web page).
A web page is the image or collection of images that is displayed to a user when the web page's HTML file is rendered by a browser application program. Each web page can contain embedded references to resources such as images, audio, video, documents, or other web pages. On the Web, the most common type of reference used to identify and locate resources is the Uniform Resource Locator, or URL. A user using a web browser can reach resources that are embedded in the web page being browsed by selecting “hyperlinks” or “links” on the web page that identify the resources through the resources' URLs.
Web pages frequently contain embedded references to media files, including audio and video files. Currently, there are two common ways in which such media files are accessed and played. In one way, a user using a web browser selects a link on a web page which leads to a media file and downloads the entire media file. After download is completed, the user accesses and plays the media file by using one of the media applications on the user's computer. Alternatively, when a web browser detects that there is a reference to a media file on a web page, the reference is automatically followed and downloading of the media file automatically begins. A plug-in application capable of playing the media file then automatically starts to play the media file within the web browser, either after completion of the download or as soon as enough data has been downloaded to initiate playing.
Media files are created in a variety of formats, however, and sometimes a media file cannot be accessed and played by any of the media applications or plug-in applications on the user's computer. In the current approaches, when a user or web browser downloads a media file, no attempt is made to check whether the media file is playable by one of the applications on the user's computer before attempting to download the entire media file. In the case that the media file is not playable by the user's computer, much time and bandwidth is lost in downloading data which is ultimately not useful to the user. If the user pays for Web communications on a per-byte basis, then downloading an unplayable media file incurs additional monetary loss for the user.
In the approach where a web browser automatically starts to play a media file when a portion of it has been downloaded, less time and money is wasted because an error will occur if the media file is not playable and this error frequently occurs before the entire media file has been downloaded. However, even under this approach, a significant amount of time and money may have already been expended in downloading the portion of the media file. This is because existing applications download the media file in a sequential fashion and do not limit the downloading to only the portion of the media file relevant for determining whether the media file is playable. Also, in the case where a user is paying for amount of data downloaded, he or she may wish to know whether a media file is playable before downloading commences.
To circumvent these problems, some web browsers currently perform a basic check to compare downloadable media files with a set of available applications. This check is performed by detecting information embedded in the web page or supplied by the server that describes a media file embedded in the web page. This information describes what application is capable of playing the embedded media file, or allows the web browser to find an application registered to play the embedded media file, and the web browser then checks if this application is installed on the computer. If the necessary application is not installed, then the media file is not downloaded and an error message is generated. This type of basic check, however, suffers from poor quality of information because information embedded in the web page is often wrong or insufficient.
In view of the foregoing, there is a need for a way to accurately detect and communicate to a user whether a media file embedded in a web page is playable on a device with minimal downloading of data about the media and without downloading the entire media file.
The approaches described in this section are approaches that could be pursued, but not necessarily approaches that have been previously conceived or pursued. Therefore, unless otherwise indicated, it should not be assumed that any of the approaches described in this section qualify as prior art merely by virtue of their inclusion in this section.